home *** CD-ROM | disk | FTP | other *** search
-
-
-
- SORT(1L) Misc. Reference Manual Pages SORT(1L)
-
-
-
- NNNNAAAAMMMMEEEE
- sort - sort lines of text files
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ssssoooorrrrtttt [-cmus] [-t separator] [-o output-file] [-T tempdir] [-
- bdfiMnr] [+POS1 [-POS2]] [-k POS1[,POS2]] [file...]
- ssssoooorrrrtttt {--help,--version}
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- This manual page documents the GNU version of ssssoooorrrrtttt. ssssoooorrrrtttt
- sorts, merges, or compares all the lines from the given
- files, or the standard input if no files are given. A file
- name of `-' means standard input. By default, ssssoooorrrrtttt writes
- the results to the standard output.
-
- ssssoooorrrrtttt has three modes of operation: sort (the default),
- merge, and check for sortedness. The following options
- change the operation mode:
-
- -_c Check whether the given files are already sorted: if
- they are not all sorted, print an error message and
- exit with a status of 1.
-
- -_m Merge the given files by sorting them as a group.
- Each input file should already be individually sorted.
- It always works to sort instead of merge; merging is
- provided because it is faster, in the case where it
- works.
-
- A pair of lines is compared as follows: if any key fields
- have been specified, ssssoooorrrrtttt compares each pair of fields, in
- the order specified on the command line, according to the
- associated ordering options, until a difference is found or
- no fields are left.
-
- If any of the global options _M_b_d_f_i_n_r are given but no key
- fields are specified, ssssoooorrrrtttt compares the entire lines accord-
- ing to the global options.
-
- Finally, as a last resort when all keys compare equal (or if
- no ordering options were specified at all), ssssoooorrrrtttt compares
- the lines byte by byte in machine collating sequence. The
- last resort comparison honors the -_r global option. The -_s
- (stable) option disables this last-resort comparison so that
- lines in which all fields compare equal are left in their
- original relative order. If no fields or global options are
- specified, -_s has no effect.
-
- GNU ssssoooorrrrtttt has no limits on input line length or restrictions
- on bytes allowed within lines. In addition, if the final
- byte of an input file is not a newline, GNU ssssoooorrrrtttt silently
- supplies one.
-
-
-
- FSF Last change: GNU Text Utilities 1
-
-
-
-
-
-
- SORT(1L) Misc. Reference Manual Pages SORT(1L)
-
-
-
- If the environment variable TTTTMMMMPPPPDDDDIIIIRRRR is set, ssssoooorrrrtttt uses it as
- the directory in which to put temporary files instead of the
- default, /tmp. The -_T _t_e_m_p_d_i_r option is another way to
- select the directory for temporary files; it overrides the
- environment variable.
-
- The following options affect the ordering of output lines.
- They may be specified globally or as part of a specific key
- field. If no key fields are specified, global options apply
- to comparison of entire lines; otherwise the global options
- are inherited by key fields that do not specify any special
- options of their own.
-
- -_b Ignore leading blanks when finding sort keys in each
- line.
-
- -_d Sort in `phone directory' order: ignore all characters
- except letters, digits and blanks when sorting.
-
- -_f Fold lower case characters into the equivalent upper
- case characters when sorting so that, for example, `b'
- is sorted the same way `B' is.
-
- -_i Ignore characters outside the ASCII range 040-0176
- octal (inclusive) when sorting.
-
- -_M An initial string, consisting of any amount of white
- space, followed by three letters abbreviating a month
- name, is folded to UPPER case and compared in the order
- `JAN' < `FEB' < ... < `DEC.' Invalid names compare low
- to valid names.
-
- -_n Compare according to arithmetic value an initial
- numeric string consisting of optional white space, an
- optional - sign, and zero or more digits, optionally
- followed by a decimal point and zero or more digits.
-
- -_r Reverse the result of comparison, so that lines with
- greater key values appear earlier in the output instead
- of later.
-
- Other options are:
-
- -_o _o_u_t_p_u_t-_f_i_l_e
- Write output to _o_u_t_p_u_t-_f_i_l_e instead of to the standard
- output. If _o_u_t_p_u_t-_f_i_l_e is one of the input files, ssssoooorrrrtttt
- copies it to a temporary file before sorting and writ-
- ing the output to _o_u_t_p_u_t-_f_i_l_e.
-
- -_t _s_e_p_a_r_a_t_o_r
- Use character _s_e_p_a_r_a_t_o_r as the field separator when
- finding the sort keys in each line. By default, fields
-
-
-
- FSF Last change: GNU Text Utilities 2
-
-
-
-
-
-
- SORT(1L) Misc. Reference Manual Pages SORT(1L)
-
-
-
- are separated by the empty string between a non-
- whitespace character and a whitespace character. That
- is to say, given the input line ` foo bar', ssssoooorrrrtttt breaks
- it into fields ` foo' and ` bar'. The field separator
- is not considered to be part of either the field
- preceding or the field following it.
-
- -_u For the default case or the -_m option, only output the
- first of a sequence of lines that compare equal. For
- the -_c option, check that no pair of consecutive lines
- compares equal.
-
- +_P_O_S_1 [-_P_O_S_2]
- Specify a field within each line to use as a sorting
- key. The field consists of the portion of the line
- starting at POS1 and up to (but not including) POS2 (or
- to the end of the line if POS2 is not given). The
- fields and character positions are numbered starting
- with 0.
-
- -_k _P_O_S_1[,_P_O_S_2]
- An alternate syntax for specifying sorting keys. The
- fields and character positions are numbered starting
- with 1.
-
- A position has the form _f._c, where _f is the number of the
- field to use and _c is the number of the first character from
- the beginning of the field (for +_p_o_s) or from the end of the
- previous field (for -_p_o_s). The ._c part of a position may be
- omitted in which case it is taken to be the first character
- in the field. If the -_b option has been given, the ._c part
- of a field specification is counted from the first nonblank
- character of the field (for +_p_o_s) or from the first nonblank
- character following the previous field (for -_p_o_s).
-
- A +_p_o_s or -_p_o_s argument may also have any of the option
- letters _M_b_d_f_i_n_r appended to it, in which case the global
- ordering options are not used for that particular field.
- The - _b option may be independently attached to either or
- both of the +_p_o_s and -_p_o_s parts of a field specification,
- and if it is inherited from the global options it will be
- attached to both. If a -_n or -_M option is used, thus imply-
- ing a -_b option, the -_b option is taken to apply to both the
- +_p_o_s and the -_p_o_s parts of a key specification. Keys may
- span multiple fields.
-
- In addition, when GNU jjjjooooiiiinnnn is invoked with exactly one argu-
- ment, the following options are recognized:
-
- --_h_e_l_p
- Print a usage message on standard output and exit suc-
- cessfully.
-
-
-
- FSF Last change: GNU Text Utilities 3
-
-
-
-
-
-
- SORT(1L) Misc. Reference Manual Pages SORT(1L)
-
-
-
- --_v_e_r_s_i_o_n
- Print version information on standard output then exit
- successfully.
-
- CCCCOOOOMMMMPPPPAAAATTTTIIIIBBBBIIIILLLLIIIITTTTYYYY
- Historical (BSD and System V) implementations of ssssoooorrrrtttt have
- differed in their interpretation of some options, particu-
- larly -_b, -_f, and -_n. GNU sort follows the POSIX behavior,
- which is usually (but not always!) like the System V
- behavior. According to POSIX -_n no longer implies -_b. For
- consistency, -_M has been changed in the same way. This may
- affect the meaning of character positions in field specifi-
- cations in obscure cases. If this bites you the fix is to
- add an explicit -_b.
-
- BBBBUUUUGGGGSSSS
- The different meaning of field numbers depending on whether
- -_k is used is confusing. It's all POSIX's fault!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- FSF Last change: GNU Text Utilities 4
-
-
-
-